unit fusuarioalterarsenha;

{$mode objfpc}

interface

uses
  Classes, SysUtils, FileUtil, LResources, Forms, Controls, Graphics, Dialogs,
  StdCtrls, Buttons, md5;

type

  { TFormUsuarioAlterarSenha }

  TFormUsuarioAlterarSenha = class(TForm)
    ButtonAlterar: TBitBtn;
    ButtonSair: TBitBtn;
    EditLogin: TEdit;
    EditSenhaAtual: TEdit;
    EditNovaSenha: TEdit;
    EditConfirmaNovaSenha: TEdit;
    GroupBox1: TGroupBox;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    procedure ButtonAlterarClick(Sender: TObject);
    procedure ButtonSairClick(Sender: TObject);
    procedure FormActivate(Sender: TObject);
  private
    { private declarations }
  public
    { public declarations }
  end;

var
  FormUsuarioAlterarSenha: TFormUsuarioAlterarSenha;

implementation

uses
  fusuariologin, dmusuario;

{ TFormUsuarioAlterarSenha }

procedure TFormUsuarioAlterarSenha.ButtonAlterarClick(Sender: TObject);
begin
  if MD5Print(MD5String(EditSenhaAtual.Text)) = DataUsuario.senha_public then
  begin
    if EditNovaSenha.Text = EditConfirmaNovaSenha.Text then
    begin
      DataUsuario.UsuarioAlterar();
      DataUsuario.UsuarioFinalizar(MD5Print(MD5String(EditNovaSenha.Text)));
      EditSenhaAtual.Clear();
      EditNovaSenha.Clear();
      EditConfirmaNovaSenha.Clear();
      ShowMessage('Senha alterada com sucesso!');
    end
    else
    begin
      ShowMessage('A nova senha não confere com a confirmação!');
    end;
  end
  else
  begin
    ShowMessage('Senha Atual incorreta!');
  end;
end;

procedure TFormUsuarioAlterarSenha.ButtonSairClick(Sender: TObject);
begin
  Close();
end;

procedure TFormUsuarioAlterarSenha.FormActivate(Sender: TObject);
begin
  EditLogin.Text := DataUsuario.login_public;
end;

initialization
  {$I fusuarioalterarsenha.lrs}

end.
